Safe Virtual Machine for C in less than 3 KiBytes
نویسندگان
چکیده
Altreonic is using a formalised approach to embedded software engineering. One recent example is Altreonic’s novel Safe Virtual Machine for C (SVM). Tuned to the needs of embedded systems it allows to dynamically download C compiled binary code to OpenComRTOS nodes independently of the target processor. Yet, the Virtual machine requires less than 3 KiBytes of program memory (measured on an ARM Cortex M3). Every processing node in an OpenComRTOS supported system can host multiple Safe Virtual Machine tasks, each of which can use the native kernel services and hence communicate system wide. SVM tasks can also be unloaded, updated at runtime as well as moved between networked OpenComRTOS nodes. A next release of the Safe Virtual Machine can verify memory accesses and catch boundary violations and numerical exceptions at runtime. The VM itself was generated in ANSI C from a higher level description. This has the benefit of correctness and allows to enhance the instruction set with little overhead. In addition the VM can be redefined using a different instruction set to address different functional needs. As the VM is based on the ARM Thumb-1 instruction set, it is also possible to execute the binary images in native mode on most of the ARM processors. While VM tasks execute slower than native code, the performance is adequate given the intended range of applications. Typical applications for the SVM are remote diagnostics, fail safe & fault tolerant control, and processor independent programming.
منابع مشابه
Analytical evaluation of an innovative decision-making algorithm for VM live migration
In order to achieve the virtual machines live migration, the two "pre-copy" and "post-copy" strategies are presented. Each of these strategies, depending on the operating conditions of the machine, may perform better than the other. In this article, a new algorithm is presented that automatically decides how the virtual machine live migration takes place. In this approach, the virtual machine m...
متن کاملCommunication-Aware Traffic Stream Optimization for Virtual Machine Placement in Cloud Datacenters with VL2 Topology
By pervasiveness of cloud computing, a colossal amount of applications from gigantic organizations increasingly tend to rely on cloud services. These demands caused a great number of applications in form of couple of virtual machines (VMs) requests to be executed on data centers’ servers. Some of applications are as big as not possible to be processed upon a single VM. Also, there exists severa...
متن کاملA Certified Implementation on Top of the Java Virtual Machine
Safe is a first-order functional language with unusual memory management features: memory can be both explicitly and implicitly deallocated at some specific points in the program text, and there is no need for a runtime garbage collector. The final code is bytecode of the Java Virtual Machine (JVM), so the language is useful for programming small devices based on this machine. As an intermediat...
متن کاملDiffusion Process for Multi - Repairmen Machining System with Spares Aand Balking
In this paper we describe G/G/R+s multi- repairmen machining system with balking. The system consists of M operating machines, S spare machines, R permanent and s additional repairmen. Assuming the discrete flow of machines by continuous one, the diffusion approximation technique for the machine repair system has developed. The system will be in normal working mode if there is M operating machi...
متن کاملPICOBIT: A Compact Scheme System for Microcontrollers
Due to their tight memory constraints, small microcontroller based embedded systems have traditionally been implemented using lowlevel languages. This paper shows that the Scheme programming language can also be used for such applications, with less than 7 kB of total memory. We present PICOBIT, a very compact implementation of Scheme suitable for memory constrained embedded systems. To achieve...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2011